from celery import shared_task
import time

from django.http import HttpResponse
from Home.tools.Es import insert_data_to_es
from Home.tools.Myredis import r
from Home.models import *

@shared_task
def cancelorders():
    print("取消订单操作111")

    #获取订单号 0  小于等于int(time.time())
    # r.set_srt("ff","fff")
    try:
        listf=r.zset_zrangebyscore('orderscancel1', 0, int(time.time()))
    except Exception as e:
        print(e)
        return HttpResponse("成功")
    #
    list=[item.decode('utf-8') for item in listf]
    print(list)
    # print(r.get_str("ff"))
    # list=[]
    #遍历订单号列表
    order = OrdersModel.objects.filter(orderno__in=list).first()
    print(order)
    # orderlist=[]
    if(order):


        #根据订单号查询订单表，把订单更新为失败状态
        order.orders_status= 0
        order.status= 0
        #查看订单是否使用积分和优惠券，如果使用更新  写入积分记录表  用户表中的积分+   我的优惠券中的状态改为没使用
        print(order.userid)
        if(order.score!=0):
            user=CusersModel.objects.filter(id=order.userid.id).first()
            print(user)

            user.score+=order.score
            user.save()
            print("kkkk")
        if(order.couponid!=0):
            coupon=UserCouponModel.objects.filter(coupon=order.couponid).first()
            coupon.userStatus=1
            coupon.save()
            order.save()
            print("操作完成")
        r.zset_zrem('orderscancel1', order.orderno)
    else:
        print("没有数据了")


@shared_task
def setdoctor():
    print('给患者分配医生')


@shared_task
def getbaidu():
    print('调用百度')


@shared_task
def orders_es():
    print('调用es保存数据1')
    insert_data_to_es()
    print('调用es保存数据2')



